﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace _11作业
{
    class Program
    {
        static void Main(string[] args)
        {
            //第一题
            //编写一个程序，对输入的4个整数，求出其中的最大值和最小值，并显示出来
            //int[] a = { 3, 23, 8, 1 };
            //int num = a[0];
            //int b = a[0];
            //for (int i = 0; i < a.Length; i++)
            //{
            //    if (a[i] > num)
            //    {
            //        num = a[i];
            //    }
            //    if(a[i] < b)
            //    {
            //        b = a[i];
            //    }
            //}
            //Console.WriteLine($"最大值为:{num} 最小值为:{b}");


            //第二题
            //让用户输入两个整数，然后再输入0-3之间的一个数，0代表加法，1代表减法，2代表乘法，3代表除法,计算这两个数字的结果
            //Console.WriteLine("请输入第一个整数：");
            //int num1 = Convert.ToInt32(Console.ReadLine());
            //Console.WriteLine("请输入第二个整数：");
            //int num2 = Convert.ToInt32(Console.ReadLine());
            //Console.WriteLine("请输入0-3之间的一个数，0代表加法，1代表减法，2代表乘法，3代表除法");
            //int a = Convert.ToInt32(Console.ReadLine());
            //int sun = 0;
            //switch (a)
            //{
            //    case 0:
            //        sun = num1 + num2;
            //        break;
            //    case 1:
            //        sun = num1 - num2;
            //        break;
            //    case 2:
            //        sun = num1 * num2;
            //        break;
            //    case 3:
            //        sun = num1 / num2;
            //        break;
            //}
            //Console.WriteLine($"计算结果为：{sun}");


            //第三题
            //求出1~1000之间的所有能被7整除的数，并计算和输出每5个的和
            //int sum = 0;
            //int a = 0;
            //for (int i = 1; i < 1000; i++)
            //{
            //    if (i % 7 == 0)
            //    {
            //        sum += i;
            //        a++;
            //        Console.WriteLine($"能被7整除的数有：{sum}");
            //        if (a == 5)
            //        {
            //            Console.WriteLine($"这五个数的和为:{sum}");
            //            a = 0;
            //            sum = 0;
            //        }
            //    }
            //}


            //第四题
            //编写一个控制台程序，分别输出1~100之间的平方、平方根  
            //for (int i = 1; i <= 100; i++)
            //{
            //    Console.WriteLine($"1~100之间{i}的平方是：{Math.Pow(i,2)}");
            //    Console.WriteLine($"1~100之间{i}的平方根是：{Math.Sqrt(i)}");
            //}



            //第五题
            //编程输出1~100中能被3整除但不能被5整除的数,并统计有多少个这样的数
            //for(int i = 1; i <= 100; i++)
            //{
            //    if (i % 3 == 0 && i % 5 != 0)
            //    {
            //        Console.WriteLine(i);
            //    }
            //}


            //第六题
            //编程输出九九乘法表
            //for(int i = 1; i <= 9; i++)
            //{
            //    for(int j = 1; j <= i; j++)
            //    {
            //        Console.Write($"{i}X{j}={j*i}\t");
            //    }
            //    Console.WriteLine();
            //}



            //第七题
            //一个控制台应用程序，输出1~5的平方值，要求：用for语句实现。用while语句实现。用do-while语句实现
            //Console.WriteLine("用for语句实现");
            //for (int i = 1; i <= 5; i++)
            //{
            //    Console.WriteLine("{0}的平方值为{1}", i, i * i);
            //}
            //Console.WriteLine("用while语句实现");
            //int j = 0;
            //while (j++ < 5)
            //{
            //    Console.WriteLine("{0}的平方值为{1}", j, j * j);
            //}
            //Console.WriteLine("用do-while语句实现");
            //int k = 1;
            //do
            //{
            //    Console.WriteLine("{0}的平方值为{1}", k, k * k);
            //} while (k++ < 5);


            //第八题
            //一个控制台应用程序,要求用户输入5个大写字母，如果用户输入的信息不满足要求，提示帮助信息并要求重新输入


            //8,一个控制台应用程序,要求用户输入5个大写字母，如果用户输入的信息不满足要求，提示帮助信息并要求重新输入。
        //    bool b = true;
        //    while (b)
        //    {
        //        Console.WriteLine("请输入5个大写字母");
        //        string s = Console.ReadLine();
        //        if (s.Length != 5)
        //        {
        //            Console.WriteLine("输入错误，请重新输入");
        //        }
        //        else
        //        {
        //            for (int i = 0; i < 5; i++)
        //            {
        //                char c = s[i];
        //                if (c < 'A' || c > 'Z')
        //                {
        //                    Console.WriteLine("第{0}个字符“{1}”不是大写字母，请重新输入。", i + 1, c);
        //                    b = false;
        //                    break;
        //                }
        //                else
        //                {
        //                    Console.WriteLine($"您输入的字母为{c}");
        //                }
        //            }
        //        }
        //    }
        //}

        
        
            //9,一个控制台应用程序，要求完成写列功能。
            //1）接收一个整数n。
            //2）如果接收的值n为正数，输出1~n间的全部整数。
            //3）如果接收的值n为负值，用break或者return退出程序。
            //4）如何n为0的话 转到1继续接收下一个整数。
            bool b = true;
            int a;
            while (b)
            {
                Console.WriteLine("请输入一个整数");
                try
                {
                    a = Convert.ToInt32(Console.ReadLine());
                }
                catch
                {
                    Console.WriteLine("您输入的错误哦，请重新输入");
                    continue;
                }
                if (a > 0)
                {
                    for (int i = 0; i <= a; i++)
                    {
                        Console.WriteLine(i);
                        b = false;
                    }
                }
                else if (a == 0)
                {
                    continue;
                }
                else
                {
                    break;
                }
            }


            Console.ReadKey();

        }
    }
}
